package com.itheima.service.mongo;

import com.itheima.domain.mongo.Movement;
import com.itheima.vo.PageBeanVo;
import org.bson.types.ObjectId;

// 动态模块
public interface MovementService {

    // 发布动态
    void saveMovement(Movement movement);

    // 查询我的动态
    PageBeanVo findMyMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    // 查询好友动态
    PageBeanVo findFriendMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    // 查询推荐动态
    PageBeanVo findRecommendMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    // 根据主键查询
    Movement findById(ObjectId id);

    // 后台查询动态列表
    PageBeanVo findMovementByPage(Long userId,Integer state, Integer pageNum, Integer pageSize);

    // 更新动态
    void update(Movement movement);
}
